home *** CD-ROM | disk | FTP | other *** search
- /***************************************
- * matrix.h
- * matrix template class interface
- ***************************************/
-
- #pragma once
-
- #include <iostream.h>
- #include <assert.h>
-
- template <class Number>
- class matrix {
- private:
- Number m[4][4];
- friend ostream& operator<<(ostream&, const matrix<Number>&);
- public:
- matrix();
- inline Number& operator()(const int,const int); // for matrix indexing
- matrix<Number> operator*(const matrix<Number>);
- };
-
- template <class Number>
- inline Number& matrix<Number>::operator()(const int row, const int col)
- {
- assert(row >=0 && row <= 3 && col >=0 && col <= 3);
- return m[row][col];
- }
-